package gruppoSoluzione.mainService.services;

import gruppoSoluzione.mainService.HTTPService;
import gruppoSoluzione.mainService.ServiceDB;
import gruppoSoluzione.mainService.ServiceParams;
import gruppoSoluzione.mainService.data.ListStringWriter;
import gruppoSoluzione.mainService.data.ServiceDBData;
import gruppoSoluzione.mainService.data.ServiceDBXML;

import java.io.DataOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Set;

/**
 * Servizio che restituisce l'elenco degli operatori
 * 
 * @author Alessandro Martinelli
 */
public class OperatoriService implements HTTPService{

	@Override
	public ArrayList<String> getServiceResult(ServiceParams params, DataOutputStream out) {
		
		//Load server
		ServiceDBXML loader=new ServiceDBXML();
		ServiceDB db=new ServiceDB();
		loader.loadDB(db);
		
		Set<String> operatori = db.getOperatori();

		HttpMessageWriter writer=new HttpMessageWriter(MimeHTTP.XML);
		ArrayList<String> risposta=writer.createHttpMessageHeader();
		
		try {
			ServiceDBData dataWriter=new ServiceDBData();
			dataWriter.writeOperatoriXML(new ListStringWriter(risposta), operatori);
		} catch (IOException e) {
			e.printStackTrace();
		}
		
		return risposta;
	}
}
